/*****************************************************************************
*
*  @file     UartDriver.h
*  @brief    Uart驱动
*            1. 负责实现Uart驱动
*
*  @author   潘学林
*  @email                                        
*  @version  V0.000
*  @date     2022/4/20
*  @license  /
*----------------------------------------------------------------------------*
*  Remark         : Description                                              *
*----------------------------------------------------------------------------*
*  Change History :                                                          *
*  <Date>     | <Version> | <Author>       | <Description>                   *
*----------------------------------------------------------------------------*
*  2022/4/20  | 0.000     | 潘学林         | 创建文件                        *
*----------------------------------------------------------------------------*
*
*****************************************************************************/

#ifndef _UARTDRIVER_H_
#define _UARTDRIVER_H_

/* Includes ------------------------------------------------------------------*/

#include "Std_Types.h" 
#include "gd32f30x.h"
#include "systick.h"

/* Micros/Enumerate/Structures -----------------------------------------------*/

/**
 * @brief 引脚定义
 */
#define RS485_TX_Pin GPIO_PIN_2
#define RS485_TX_Port GPIOA
#define RS485_RX_Pin GPIO_PIN_3
#define RS485_RX_Port GPIOA

/* 串口1数据地址 */
#define USART1_DATA_ADDRESS ((uint32)0x40004404)
/* 串口接收数据长度 */
#define USART1_RX_LENGTH 64

/* Variables -----------------------------------------------------------------*/

/* Functions -----------------------------------------------------------------*/

/*****************************************
* 接口函数
*****************************************/

/**
  * @brief  Uart驱动初始化
  * @param  None
  * @retval None
  */
void UartDriver_Init(void);

/**
  * @brief  Uart发送处理
  * @param  None
  * @retval None
  */
void UartDriver_SendProcess(void);

/**
  * @brief  Uart接收处理
  * @param  None
  * @retval None
  */
void UartDriver_ReceiveProcess(void);

#endif

/********************************* END OF FILE ********************************/

